openapi: 3.0.1
info:
  title: Reference Data Api
  description: ''
  version: '2.0'
tags:
  - name: ReferenceLists
    x-displayName: Reference Lists
  - name: Allergens
    x-displayName: Allergens
  - name: Countries
    x-displayName: Countries
  - name: Country Divisions
    x-displayName: Country Divisions
  - name: Fishing Zones
    x-displayName: Fishing Zones
  - name: Harmonized Codes
    x-displayName: Harmonized Codes
  - name: Markets
    x-displayName: Markets
  - name: Nutrient Families
    x-displayName: Nutrient Families
  - name: Nutrients
    x-displayName: Nutrients
  - name: Raw Material Classification
    x-displayName: Raw Material Classification
  - name: Raw Material Parts
    x-displayName: Raw Material Parts
  - name: Substance Functions
    x-displayName: Substance Functions
  - name: Substances
    x-displayName: Substances
paths:
  /v2/lists/{listName}/{itemId}:
    get:
      tags:
        - ReferenceLists
      summary: Get reference item by Id
      operationId: ReferenceLists_GetItem
      parameters:
        - name: listName
          in: path
          description: >-
            Available values : preservation-method,
            storage-condition-temperature, storage-condition-context,
            production-date-indication, consumer-shelf-life-indication,
            guaranteed-shelf-life, origin-type, control-phase,
            characteristic-type, cleaning-treatment, treatment-type,
            packaging-materials, template-type, languages, portal-types,
            trade-item-status
          required: true
          schema:
            type: string
        - name: itemId
          in: path
          required: true
          schema:
            type: string
            format: uuid
        - name: LanguageCode
          in: query
          schema:
            type: string
        - name: CompanyId
          in: query
          schema:
            type: string
            format: uuid
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/TraceOne.Api.ReferenceListMasterData.Default.Http.Controllers.V2.ReferenceList.ViewModels.ReferenceListItemDetail
        '404':
          description: Reference List Item not found or it does not have a translation
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/TraceOne.Api.Infrastructure.WebApi.ProblemDetails.T1ProblemDetails
              example:
                errors: []
                type: https://tools.ietf.org/html/rfc7231#section-6.5.4
                title: Not Found
                status: 404
                detail: null
                instance: null
                extensions: {}
      security:
        - Bearer: []
  /v2/lists/{listName}:
    get:
      tags:
        - ReferenceLists
      summary: Get reference items by reference list name
      operationId: ReferenceLists_GetItemsByRefListName
      parameters:
        - name: listName
          in: path
          description: >-
            Available values : preservation-method,
            storage-condition-temperature, storage-condition-context,
            production-date-indication, consumer-shelf-life-indication,
            guaranteed-shelf-life, origin-type, control-phase,
            characteristic-type, cleaning-treatment, treatment-type,
            packaging-materials, template-type, languages, portal-types,
            trade-item-status
          required: true
          schema:
            type: string
        - name: LanguageCode
          in: query
          schema:
            type: string
        - name: CompanyId
          in: query
          schema:
            type: string
            format: uuid
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                title: List`1
                type: array
                items:
                  $ref: >-
                    #/components/schemas/TraceOne.Api.ReferenceListMasterData.Default.Http.Controllers.V2.ReferenceList.ViewModels.ReferenceListItem
      security:
        - Bearer: []
  /v2/allergens/{allergenId}:
    get:
      tags:
        - Allergens
      summary: Get by id
      description: Get allergen details
      operationId: Allergen_GetById
      parameters:
        - name: allergenId
          in: path
          description: Allergen unique identifier
          required: true
          schema:
            type: string
            format: uuid
        - name: languageCode
          in: query
          description: 'Language code (optional, default: en-US)'
          schema:
            type: string
          example: fr-FR
        - name: includeParents
          in: query
          description: >-
            Indicates whether to include the hierarchy of parent items
            (optional, default: false)
          schema:
            type: boolean
      responses:
        '200':
          description: Allergen
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/Allergen'
            application/json:
              schema:
                $ref: '#/components/schemas/Allergen'
            text/json:
              schema:
                $ref: '#/components/schemas/Allergen'
        '400':
          description: Bad request
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.1
                title: Bad Request
                status: 400
                errors:
                  - code: INVALID_REQUEST
                    property: Property1
                    message: Property1 is null or empty
                    detail: null
                  - code: INVALID_REQUEST
                    property: Property2
                    message: The value is not valid
                    detail: null
            application/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.1
                title: Bad Request
                status: 400
                errors:
                  - code: INVALID_REQUEST
                    property: Property1
                    message: Property1 is null or empty
                    detail: null
                  - code: INVALID_REQUEST
                    property: Property2
                    message: The value is not valid
                    detail: null
            text/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.1
                title: Bad Request
                status: 400
                errors:
                  - code: INVALID_REQUEST
                    property: Property1
                    message: Property1 is null or empty
                    detail: null
                  - code: INVALID_REQUEST
                    property: Property2
                    message: The value is not valid
                    detail: null
        '401':
          description: Unauthorized
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7235#section-3.1
                title: Unauthorized
                status: 401
                errors: []
            application/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7235#section-3.1
                title: Unauthorized
                status: 401
                errors: []
            text/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7235#section-3.1
                title: Unauthorized
                status: 401
                errors: []
        '404':
          description: The allergen is not found
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.4
                title: Not Found
                status: 404
                errors: []
            application/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.4
                title: Not Found
                status: 404
                errors: []
            text/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.4
                title: Not Found
                status: 404
                errors: []
      security:
        - Bearer: []
  /v2/countries/{countryId}:
    get:
      tags:
        - Countries
      summary: Get by id
      description: Get country details
      operationId: Country_GetById
      parameters:
        - name: countryId
          in: path
          description: Country identifier
          required: true
          schema:
            type: string
            format: uuid
        - name: languageCode
          in: query
          description: 'Language code (optional, default: en-US)'
          schema:
            type: string
          example: fr-FR
      responses:
        '200':
          description: Country
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/Country'
            application/json:
              schema:
                $ref: '#/components/schemas/Country'
            text/json:
              schema:
                $ref: '#/components/schemas/Country'
        '400':
          description: Bad request
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.1
                title: Bad Request
                status: 400
                errors:
                  - code: INVALID_REQUEST
                    property: Property1
                    message: Property1 is null or empty
                    detail: null
                  - code: INVALID_REQUEST
                    property: Property2
                    message: The value is not valid
                    detail: null
            application/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.1
                title: Bad Request
                status: 400
                errors:
                  - code: INVALID_REQUEST
                    property: Property1
                    message: Property1 is null or empty
                    detail: null
                  - code: INVALID_REQUEST
                    property: Property2
                    message: The value is not valid
                    detail: null
            text/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.1
                title: Bad Request
                status: 400
                errors:
                  - code: INVALID_REQUEST
                    property: Property1
                    message: Property1 is null or empty
                    detail: null
                  - code: INVALID_REQUEST
                    property: Property2
                    message: The value is not valid
                    detail: null
        '401':
          description: Unauthorized
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7235#section-3.1
                title: Unauthorized
                status: 401
                errors: []
            application/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7235#section-3.1
                title: Unauthorized
                status: 401
                errors: []
            text/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7235#section-3.1
                title: Unauthorized
                status: 401
                errors: []
        '404':
          description: The country is not found
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.4
                title: Not Found
                status: 404
                errors: []
            application/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.4
                title: Not Found
                status: 404
                errors: []
            text/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.4
                title: Not Found
                status: 404
                errors: []
      security:
        - Bearer: []
  /v2/country-divisions/{countryDivisionId}:
    get:
      tags:
        - Country Divisions
      summary: Get by id
      description: Get country division details
      operationId: CountryDivision_GetById
      parameters:
        - name: countryDivisionId
          in: path
          description: Country division identifier
          required: true
          schema:
            type: string
            format: uuid
        - name: languageCode
          in: query
          description: 'Language code (optional, default: en-US)'
          schema:
            type: string
          example: fr-FR
        - name: includeParents
          in: query
          description: >-
            Indicates whether to include the hierarchy of parent items
            (optional, default: false)
          schema:
            type: boolean
      responses:
        '200':
          description: Country division
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/CountryDivision'
            application/json:
              schema:
                $ref: '#/components/schemas/CountryDivision'
            text/json:
              schema:
                $ref: '#/components/schemas/CountryDivision'
        '400':
          description: Bad request
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.1
                title: Bad Request
                status: 400
                errors:
                  - code: INVALID_REQUEST
                    property: Property1
                    message: Property1 is null or empty
                    detail: null
                  - code: INVALID_REQUEST
                    property: Property2
                    message: The value is not valid
                    detail: null
            application/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.1
                title: Bad Request
                status: 400
                errors:
                  - code: INVALID_REQUEST
                    property: Property1
                    message: Property1 is null or empty
                    detail: null
                  - code: INVALID_REQUEST
                    property: Property2
                    message: The value is not valid
                    detail: null
            text/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.1
                title: Bad Request
                status: 400
                errors:
                  - code: INVALID_REQUEST
                    property: Property1
                    message: Property1 is null or empty
                    detail: null
                  - code: INVALID_REQUEST
                    property: Property2
                    message: The value is not valid
                    detail: null
        '401':
          description: Unauthorized
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7235#section-3.1
                title: Unauthorized
                status: 401
                errors: []
            application/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7235#section-3.1
                title: Unauthorized
                status: 401
                errors: []
            text/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7235#section-3.1
                title: Unauthorized
                status: 401
                errors: []
        '404':
          description: The country division is not found
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.4
                title: Not Found
                status: 404
                errors: []
            application/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.4
                title: Not Found
                status: 404
                errors: []
            text/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.4
                title: Not Found
                status: 404
                errors: []
      security:
        - Bearer: []
  /v2/fishing-zones/{fishingZoneId}:
    get:
      tags:
        - Fishing Zones
      summary: Get by id
      description: Get fishing zone details
      operationId: FishingZone_GetById
      parameters:
        - name: fishingZoneId
          in: path
          description: Fishing zone identifier
          required: true
          schema:
            type: string
            format: uuid
        - name: languageCode
          in: query
          description: 'Language code (optional, default: en-US)'
          schema:
            type: string
          example: fr-FR
        - name: includeParents
          in: query
          description: >-
            Indicates whether to include the hierarchy of parent items
            (optional, default: false)
          schema:
            type: boolean
      responses:
        '200':
          description: Fishing zone
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/FishingZone'
            application/json:
              schema:
                $ref: '#/components/schemas/FishingZone'
            text/json:
              schema:
                $ref: '#/components/schemas/FishingZone'
        '400':
          description: Bad request
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.1
                title: Bad Request
                status: 400
                errors:
                  - code: INVALID_REQUEST
                    property: Property1
                    message: Property1 is null or empty
                    detail: null
                  - code: INVALID_REQUEST
                    property: Property2
                    message: The value is not valid
                    detail: null
            application/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.1
                title: Bad Request
                status: 400
                errors:
                  - code: INVALID_REQUEST
                    property: Property1
                    message: Property1 is null or empty
                    detail: null
                  - code: INVALID_REQUEST
                    property: Property2
                    message: The value is not valid
                    detail: null
            text/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.1
                title: Bad Request
                status: 400
                errors:
                  - code: INVALID_REQUEST
                    property: Property1
                    message: Property1 is null or empty
                    detail: null
                  - code: INVALID_REQUEST
                    property: Property2
                    message: The value is not valid
                    detail: null
        '401':
          description: Unauthorized
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7235#section-3.1
                title: Unauthorized
                status: 401
                errors: []
            application/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7235#section-3.1
                title: Unauthorized
                status: 401
                errors: []
            text/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7235#section-3.1
                title: Unauthorized
                status: 401
                errors: []
        '404':
          description: The fishing zone is not found
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.4
                title: Not Found
                status: 404
                errors: []
            application/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.4
                title: Not Found
                status: 404
                errors: []
            text/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.4
                title: Not Found
                status: 404
                errors: []
      security:
        - Bearer: []
  /v2/harmonized-codes/{hsCode}:
    get:
      tags:
        - Harmonized Codes
      summary: Get by code
      description: Get harmonized code details
      operationId: HarmonizedCode_GetByCode
      parameters:
        - name: hsCode
          in: path
          description: Harmonized code
          required: true
          schema:
            type: string
        - name: languageCode
          in: query
          description: 'Language code (optional, default: en-US)'
          schema:
            type: string
          example: fr-FR
      responses:
        '200':
          description: Harmonized code
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/HarmonizedCode'
            application/json:
              schema:
                $ref: '#/components/schemas/HarmonizedCode'
            text/json:
              schema:
                $ref: '#/components/schemas/HarmonizedCode'
        '400':
          description: Bad request
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.1
                title: Bad Request
                status: 400
                errors:
                  - code: INVALID_REQUEST
                    property: Property1
                    message: Property1 is null or empty
                    detail: null
                  - code: INVALID_REQUEST
                    property: Property2
                    message: The value is not valid
                    detail: null
            application/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.1
                title: Bad Request
                status: 400
                errors:
                  - code: INVALID_REQUEST
                    property: Property1
                    message: Property1 is null or empty
                    detail: null
                  - code: INVALID_REQUEST
                    property: Property2
                    message: The value is not valid
                    detail: null
            text/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.1
                title: Bad Request
                status: 400
                errors:
                  - code: INVALID_REQUEST
                    property: Property1
                    message: Property1 is null or empty
                    detail: null
                  - code: INVALID_REQUEST
                    property: Property2
                    message: The value is not valid
                    detail: null
        '401':
          description: Unauthorized
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7235#section-3.1
                title: Unauthorized
                status: 401
                errors: []
            application/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7235#section-3.1
                title: Unauthorized
                status: 401
                errors: []
            text/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7235#section-3.1
                title: Unauthorized
                status: 401
                errors: []
        '404':
          description: The harmonized code is not found
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.4
                title: Not Found
                status: 404
                errors: []
            application/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.4
                title: Not Found
                status: 404
                errors: []
            text/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.4
                title: Not Found
                status: 404
                errors: []
      security:
        - Bearer: []
  /v2/markets/{marketId}:
    get:
      tags:
        - Markets
      summary: Get by id
      description: Get market details
      operationId: Market_GetById
      parameters:
        - name: marketId
          in: path
          description: Market identifier
          required: true
          schema:
            type: string
            format: uuid
        - name: languageCode
          in: query
          description: 'Language code (optional, default: en-US)'
          schema:
            type: string
          example: fr-FR
      responses:
        '200':
          description: Market
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/Market'
            application/json:
              schema:
                $ref: '#/components/schemas/Market'
            text/json:
              schema:
                $ref: '#/components/schemas/Market'
        '400':
          description: Bad request
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.1
                title: Bad Request
                status: 400
                errors:
                  - code: INVALID_REQUEST
                    property: Property1
                    message: Property1 is null or empty
                    detail: null
                  - code: INVALID_REQUEST
                    property: Property2
                    message: The value is not valid
                    detail: null
            application/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.1
                title: Bad Request
                status: 400
                errors:
                  - code: INVALID_REQUEST
                    property: Property1
                    message: Property1 is null or empty
                    detail: null
                  - code: INVALID_REQUEST
                    property: Property2
                    message: The value is not valid
                    detail: null
            text/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.1
                title: Bad Request
                status: 400
                errors:
                  - code: INVALID_REQUEST
                    property: Property1
                    message: Property1 is null or empty
                    detail: null
                  - code: INVALID_REQUEST
                    property: Property2
                    message: The value is not valid
                    detail: null
        '401':
          description: Unauthorized
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7235#section-3.1
                title: Unauthorized
                status: 401
                errors: []
            application/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7235#section-3.1
                title: Unauthorized
                status: 401
                errors: []
            text/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7235#section-3.1
                title: Unauthorized
                status: 401
                errors: []
        '404':
          description: The market is not found
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.4
                title: Not Found
                status: 404
                errors: []
            application/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.4
                title: Not Found
                status: 404
                errors: []
            text/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.4
                title: Not Found
                status: 404
                errors: []
      security:
        - Bearer: []
  /v2/nutrient-families/{nutrientFamilyId}:
    get:
      tags:
        - Nutrient Families
      summary: Get by id
      description: Get nutrient family details
      operationId: NutrientFamily_GetById
      parameters:
        - name: nutrientFamilyId
          in: path
          description: Nutrient family identifier
          required: true
          schema:
            type: string
            format: uuid
        - name: countryCode
          in: query
          description: Country code
          schema:
            type: string
        - name: languageCode
          in: query
          description: 'Language code (optional, default: en-US)'
          schema:
            type: string
          example: fr-FR
      responses:
        '200':
          description: Nutrient family
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/NutrientFamily'
            application/json:
              schema:
                $ref: '#/components/schemas/NutrientFamily'
            text/json:
              schema:
                $ref: '#/components/schemas/NutrientFamily'
        '400':
          description: Bad request
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.1
                title: Bad Request
                status: 400
                errors:
                  - code: INVALID_REQUEST
                    property: Property1
                    message: Property1 is null or empty
                    detail: null
                  - code: INVALID_REQUEST
                    property: Property2
                    message: The value is not valid
                    detail: null
            application/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.1
                title: Bad Request
                status: 400
                errors:
                  - code: INVALID_REQUEST
                    property: Property1
                    message: Property1 is null or empty
                    detail: null
                  - code: INVALID_REQUEST
                    property: Property2
                    message: The value is not valid
                    detail: null
            text/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.1
                title: Bad Request
                status: 400
                errors:
                  - code: INVALID_REQUEST
                    property: Property1
                    message: Property1 is null or empty
                    detail: null
                  - code: INVALID_REQUEST
                    property: Property2
                    message: The value is not valid
                    detail: null
        '401':
          description: Unauthorized
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7235#section-3.1
                title: Unauthorized
                status: 401
                errors: []
            application/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7235#section-3.1
                title: Unauthorized
                status: 401
                errors: []
            text/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7235#section-3.1
                title: Unauthorized
                status: 401
                errors: []
        '404':
          description: The nutrient family is not found
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.4
                title: Not Found
                status: 404
                errors: []
            application/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.4
                title: Not Found
                status: 404
                errors: []
            text/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.4
                title: Not Found
                status: 404
                errors: []
      security:
        - Bearer: []
  /v2/nutrients/{nutrientId}:
    get:
      tags:
        - Nutrients
      summary: Get by id
      description: Get nutrient details
      operationId: Nutrient_GetById
      parameters:
        - name: nutrientId
          in: path
          description: Nutrient identifier
          required: true
          schema:
            type: string
            format: uuid
        - name: productTypeId
          in: query
          description: Product type identifier
          required: true
          schema:
            type: string
            format: uuid
        - name: companyId
          in: query
          description: Company identifier
          schema:
            type: string
            format: uuid
        - name: countryCode
          in: query
          description: Country code
          schema:
            type: string
        - name: includeParents
          in: query
          description: >-
            Indicates whether to include the hierarchy of parent items
            (optional, default: false)
          schema:
            type: boolean
        - name: languageCode
          in: query
          description: 'Language code (optional, default: en-US)'
          schema:
            type: string
          example: fr-FR
      responses:
        '200':
          description: Nutrient
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/Nutrient'
            application/json:
              schema:
                $ref: '#/components/schemas/Nutrient'
            text/json:
              schema:
                $ref: '#/components/schemas/Nutrient'
        '400':
          description: Bad request
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.1
                title: Bad Request
                status: 400
                errors:
                  - code: INVALID_REQUEST
                    property: Property1
                    message: Property1 is null or empty
                    detail: null
                  - code: INVALID_REQUEST
                    property: Property2
                    message: The value is not valid
                    detail: null
            application/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.1
                title: Bad Request
                status: 400
                errors:
                  - code: INVALID_REQUEST
                    property: Property1
                    message: Property1 is null or empty
                    detail: null
                  - code: INVALID_REQUEST
                    property: Property2
                    message: The value is not valid
                    detail: null
            text/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.1
                title: Bad Request
                status: 400
                errors:
                  - code: INVALID_REQUEST
                    property: Property1
                    message: Property1 is null or empty
                    detail: null
                  - code: INVALID_REQUEST
                    property: Property2
                    message: The value is not valid
                    detail: null
        '401':
          description: Unauthorized
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7235#section-3.1
                title: Unauthorized
                status: 401
                errors: []
            application/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7235#section-3.1
                title: Unauthorized
                status: 401
                errors: []
            text/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7235#section-3.1
                title: Unauthorized
                status: 401
                errors: []
        '404':
          description: The nutrient is not found
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.4
                title: Not Found
                status: 404
                errors: []
            application/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.4
                title: Not Found
                status: 404
                errors: []
            text/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.4
                title: Not Found
                status: 404
                errors: []
      security:
        - Bearer: []
  /v2/raw-material-classification-items/{rawMaterialClassificationItemId}:
    get:
      tags:
        - Raw Material Classification
      summary: Get by id
      description: Get raw material classification item details
      operationId: RawMaterialClassification_GetById
      parameters:
        - name: rawMaterialClassificationItemId
          in: path
          description: Raw material classification item identifierS
          required: true
          schema:
            type: string
            format: uuid
        - name: languageCode
          in: query
          description: 'Language code (optional, default: en-US)'
          schema:
            type: string
          example: fr-FR
        - name: includeParents
          in: query
          description: >-
            Indicates whether to include the hierarchy of parent items
            (optional, default: false)
          schema:
            type: boolean
      responses:
        '200':
          description: Raw material classification item
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/RawMaterialClassificationItem'
            application/json:
              schema:
                $ref: '#/components/schemas/RawMaterialClassificationItem'
            text/json:
              schema:
                $ref: '#/components/schemas/RawMaterialClassificationItem'
        '400':
          description: Bad request
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.1
                title: Bad Request
                status: 400
                errors:
                  - code: INVALID_REQUEST
                    property: Property1
                    message: Property1 is null or empty
                    detail: null
                  - code: INVALID_REQUEST
                    property: Property2
                    message: The value is not valid
                    detail: null
            application/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.1
                title: Bad Request
                status: 400
                errors:
                  - code: INVALID_REQUEST
                    property: Property1
                    message: Property1 is null or empty
                    detail: null
                  - code: INVALID_REQUEST
                    property: Property2
                    message: The value is not valid
                    detail: null
            text/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.1
                title: Bad Request
                status: 400
                errors:
                  - code: INVALID_REQUEST
                    property: Property1
                    message: Property1 is null or empty
                    detail: null
                  - code: INVALID_REQUEST
                    property: Property2
                    message: The value is not valid
                    detail: null
        '401':
          description: Unauthorized
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7235#section-3.1
                title: Unauthorized
                status: 401
                errors: []
            application/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7235#section-3.1
                title: Unauthorized
                status: 401
                errors: []
            text/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7235#section-3.1
                title: Unauthorized
                status: 401
                errors: []
        '404':
          description: The raw material classification item is not found
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.4
                title: Not Found
                status: 404
                errors: []
            application/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.4
                title: Not Found
                status: 404
                errors: []
            text/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.4
                title: Not Found
                status: 404
                errors: []
      security:
        - Bearer: []
  /v2/raw-material-parts/{rawMaterialPartId}:
    get:
      tags:
        - Raw Material Parts
      summary: Get by id
      description: Get raw material part details
      operationId: RawMaterialParts_GetById
      parameters:
        - name: rawMaterialPartId
          in: path
          description: Raw material part identifier
          required: true
          schema:
            type: string
            format: uuid
        - name: languageCode
          in: query
          description: 'Language code (optional, default: en-US)'
          schema:
            type: string
          example: fr-FR
        - name: includeParents
          in: query
          description: >-
            Indicates whether to include the hierarchy of parent items
            (optional, default: false)
          schema:
            type: boolean
      responses:
        '200':
          description: Raw material part
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/RawMaterialPart'
            application/json:
              schema:
                $ref: '#/components/schemas/RawMaterialPart'
            text/json:
              schema:
                $ref: '#/components/schemas/RawMaterialPart'
        '400':
          description: Bad request
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.1
                title: Bad Request
                status: 400
                errors:
                  - code: INVALID_REQUEST
                    property: Property1
                    message: Property1 is null or empty
                    detail: null
                  - code: INVALID_REQUEST
                    property: Property2
                    message: The value is not valid
                    detail: null
            application/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.1
                title: Bad Request
                status: 400
                errors:
                  - code: INVALID_REQUEST
                    property: Property1
                    message: Property1 is null or empty
                    detail: null
                  - code: INVALID_REQUEST
                    property: Property2
                    message: The value is not valid
                    detail: null
            text/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.1
                title: Bad Request
                status: 400
                errors:
                  - code: INVALID_REQUEST
                    property: Property1
                    message: Property1 is null or empty
                    detail: null
                  - code: INVALID_REQUEST
                    property: Property2
                    message: The value is not valid
                    detail: null
        '401':
          description: Unauthorized
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7235#section-3.1
                title: Unauthorized
                status: 401
                errors: []
            application/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7235#section-3.1
                title: Unauthorized
                status: 401
                errors: []
            text/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7235#section-3.1
                title: Unauthorized
                status: 401
                errors: []
        '404':
          description: The raw material part is not found
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.4
                title: Not Found
                status: 404
                errors: []
            application/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.4
                title: Not Found
                status: 404
                errors: []
            text/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.4
                title: Not Found
                status: 404
                errors: []
      security:
        - Bearer: []
  /v2/substance-functions/{substanceFunctionId}:
    get:
      tags:
        - Substance Functions
      summary: Get by id
      description: Get substance function details
      operationId: SubstanceFunction_GetById
      parameters:
        - name: substanceFunctionId
          in: path
          description: Substance function identifier
          required: true
          schema:
            type: string
            format: uuid
        - name: languageCode
          in: query
          description: 'Language code (optional, default: en-US)'
          schema:
            type: string
          example: fr-FR
      responses:
        '200':
          description: Substance function
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/SubstanceFunction'
            application/json:
              schema:
                $ref: '#/components/schemas/SubstanceFunction'
            text/json:
              schema:
                $ref: '#/components/schemas/SubstanceFunction'
        '400':
          description: Bad request
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.1
                title: Bad Request
                status: 400
                errors:
                  - code: INVALID_REQUEST
                    property: Property1
                    message: Property1 is null or empty
                    detail: null
                  - code: INVALID_REQUEST
                    property: Property2
                    message: The value is not valid
                    detail: null
            application/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.1
                title: Bad Request
                status: 400
                errors:
                  - code: INVALID_REQUEST
                    property: Property1
                    message: Property1 is null or empty
                    detail: null
                  - code: INVALID_REQUEST
                    property: Property2
                    message: The value is not valid
                    detail: null
            text/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.1
                title: Bad Request
                status: 400
                errors:
                  - code: INVALID_REQUEST
                    property: Property1
                    message: Property1 is null or empty
                    detail: null
                  - code: INVALID_REQUEST
                    property: Property2
                    message: The value is not valid
                    detail: null
        '401':
          description: Unauthorized
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7235#section-3.1
                title: Unauthorized
                status: 401
                errors: []
            application/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7235#section-3.1
                title: Unauthorized
                status: 401
                errors: []
            text/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7235#section-3.1
                title: Unauthorized
                status: 401
                errors: []
        '404':
          description: The substance function is not found
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.4
                title: Not Found
                status: 404
                errors: []
            application/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.4
                title: Not Found
                status: 404
                errors: []
            text/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.4
                title: Not Found
                status: 404
                errors: []
      security:
        - Bearer: []
  /v2/substances/{substanceId}:
    get:
      tags:
        - Substances
      summary: Get by id
      description: Get substance details
      operationId: Substance_GetById
      parameters:
        - name: substanceId
          in: path
          description: Substance identifier
          required: true
          schema:
            type: string
            format: uuid
        - name: languageCode
          in: query
          description: 'Language code (optional, default: en-US)'
          schema:
            type: string
          example: fr-FR
        - name: companyId
          in: query
          description: >-
            Company Identifier (optional, allows getting company-specific
            substance names)
          schema:
            type: string
            format: uuid
      responses:
        '200':
          description: Substance
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/Substance'
            application/json:
              schema:
                $ref: '#/components/schemas/Substance'
            text/json:
              schema:
                $ref: '#/components/schemas/Substance'
        '400':
          description: Bad request
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.1
                title: Bad Request
                status: 400
                errors:
                  - code: INVALID_REQUEST
                    property: Property1
                    message: Property1 is null or empty
                    detail: null
                  - code: INVALID_REQUEST
                    property: Property2
                    message: The value is not valid
                    detail: null
            application/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.1
                title: Bad Request
                status: 400
                errors:
                  - code: INVALID_REQUEST
                    property: Property1
                    message: Property1 is null or empty
                    detail: null
                  - code: INVALID_REQUEST
                    property: Property2
                    message: The value is not valid
                    detail: null
            text/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.1
                title: Bad Request
                status: 400
                errors:
                  - code: INVALID_REQUEST
                    property: Property1
                    message: Property1 is null or empty
                    detail: null
                  - code: INVALID_REQUEST
                    property: Property2
                    message: The value is not valid
                    detail: null
        '401':
          description: Unauthorized
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7235#section-3.1
                title: Unauthorized
                status: 401
                errors: []
            application/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7235#section-3.1
                title: Unauthorized
                status: 401
                errors: []
            text/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7235#section-3.1
                title: Unauthorized
                status: 401
                errors: []
        '404':
          description: The substance is not found or has no defined usage
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.4
                title: Not Found
                status: 404
                errors: []
            application/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.4
                title: Not Found
                status: 404
                errors: []
            text/json:
              schema:
                $ref: '#/components/schemas/T1ProblemDetails'
              example:
                type: https://tools.ietf.org/html/rfc7231#section-6.5.4
                title: Not Found
                status: 404
                errors: []
      security:
        - Bearer: []
components:
  schemas:
    JsonPatchDocument:
      type: array
      items:
        $ref: '#/components/schemas/JsonPatchOperation'
      description: Array of operations to perform
    JsonPatchOperation:
      type: object
      properties:
        op:
          type: string
        value:
          oneOf:
            - type: object
              nullable: true
            - type: object
              nullable: true
        path:
          type: string
    TraceOne.Api.Infrastructure.WebApi.ProblemDetails.T1ProblemDetails:
      title: T1ProblemDetails
      type: object
      properties:
        errors:
          title: List`1
          type: array
          items:
            $ref: >-
              #/components/schemas/TraceOne.Api.Infrastructure.WebApi.ProblemDetails.T1ProblemDetails_Error
          nullable: true
        type:
          type: string
          nullable: true
        title:
          type: string
          nullable: true
        status:
          type: integer
          format: int32
          nullable: true
        detail:
          type: string
          nullable: true
        instance:
          type: string
          nullable: true
      additionalProperties:
        title: Object
    TraceOne.Api.Infrastructure.WebApi.ProblemDetails.T1ProblemDetails_Error:
      title: Error
      type: object
      properties:
        code:
          type: string
          nullable: true
        legacyCode:
          type: string
          nullable: true
          deprecated: true
        property:
          type: string
          nullable: true
        message:
          type: string
          nullable: true
        detail:
          type: string
          nullable: true
        extensions:
          title: IDictionary`2
          type: object
          additionalProperties:
            title: Object
          nullable: true
      additionalProperties: false
    TraceOne.Api.ReferenceListMasterData.Default.Http.Controllers.V2.ReferenceList.ViewModels.ReferenceListItem:
      title: ReferenceListItem
      type: object
      properties:
        id:
          type: string
          format: uuid
        code:
          type: string
          nullable: true
        name:
          type: string
          nullable: true
      additionalProperties: false
    TraceOne.Api.ReferenceListMasterData.Default.Http.Controllers.V2.ReferenceList.ViewModels.ReferenceListItemDetail:
      title: ReferenceListItemDetail
      type: object
      properties:
        id:
          type: string
          format: uuid
        code:
          type: string
          nullable: true
        name:
          type: string
          nullable: true
        isActive:
          type: boolean
        listName:
          type: string
          nullable: true
        auditData:
          title: AuditData
          allOf:
            - $ref: >-
                #/components/schemas/TraceOne.Api.ReferenceListMasterData.Default.Http.Controllers.V2.ViewModels.AuditData
          nullable: true
      additionalProperties: false
    TraceOne.Api.ReferenceListMasterData.Default.Http.Controllers.V2.ViewModels.AuditData:
      title: AuditData
      type: object
      properties:
        modifiedBy:
          type: string
          format: uuid
          nullable: true
        modifiedAt:
          type: string
          format: date-time
          nullable: true
        createdBy:
          type: string
          format: uuid
          nullable: true
        createdAt:
          type: string
          format: date-time
          nullable: true
      additionalProperties: false
    Allergen:
      type: object
      properties:
        id:
          type: string
          description: Allergen identifier
          format: uuid
        name:
          type: string
          description: Allergen name
        parentId:
          type: string
          description: Allergen parent identifier
          format: uuid
          nullable: true
        hasChildren:
          type: boolean
          description: Indicates if the allergen has child allergens
        children:
          type: array
          items:
            $ref: '#/components/schemas/Allergen'
          description: A collection of immediate child allergens
          readOnly: true
      additionalProperties: false
      description: Allergen
    Country:
      type: object
      properties:
        id:
          type: string
          description: Country identifier
          format: uuid
        code:
          type: string
          description: Country code
        name:
          type: string
          description: Country name
      additionalProperties: false
      description: Country
    CountryDivision:
      type: object
      properties:
        id:
          type: string
          description: Country division identifier
          format: uuid
        name:
          type: string
          description: Country division name
        code:
          type: string
          description: Country division code
          nullable: true
        divisionType:
          type: string
          description: Country division type
        parentId:
          type: string
          description: Country division parent id
          format: uuid
          nullable: true
        countryCode:
          type: string
          description: Country code
        hasChildren:
          type: boolean
          description: True, if country division has child items
        children:
          type: array
          items:
            $ref: '#/components/schemas/CountryDivision'
          description: Country division children
      additionalProperties: false
      description: Country division
    Error:
      type: object
      properties:
        code:
          type: string
          nullable: true
        legacyCode:
          type: string
          nullable: true
          readOnly: true
          deprecated: true
        property:
          type: string
          nullable: true
        message:
          type: string
          nullable: true
        detail:
          type: string
          nullable: true
          readOnly: true
      additionalProperties: {}
    FishingZone:
      type: object
      properties:
        id:
          type: string
          description: Fishing zone identifier
          format: uuid
        name:
          type: string
          description: Fishing zone name
        faoCode:
          type: string
          description: Fishing zone FAO code
        spatialUnit:
          type: string
          description: Fishing zone spatial unit
        parentId:
          type: string
          description: Fishing zone parent identifier
          format: uuid
          nullable: true
        hasChildren:
          type: boolean
          description: True, if fishing zone has child items
        children:
          type: array
          items:
            $ref: '#/components/schemas/FishingZone'
          description: Fishing zone children
      additionalProperties: false
      description: Fishing zone
    HarmonizedCode:
      type: object
      properties:
        id:
          type: string
          description: Harmonized code identifier
          format: uuid
        parentId:
          type: string
          description: Harmonized code parent identifier
          format: uuid
          nullable: true
        hsCode:
          type: string
          description: Harmonized code
          nullable: true
        label:
          type: string
          description: Harmonized code label
      additionalProperties: false
      description: Harmonized code
    Market:
      type: object
      properties:
        id:
          type: string
          description: Market identifier
          format: uuid
        name:
          type: string
          description: Market name
        countries:
          type: array
          items:
            $ref: '#/components/schemas/MarketCountry'
          description: Market countries
      additionalProperties: false
      description: Market
    MarketCountry:
      type: object
      properties:
        code:
          type: string
          description: Country Code
      additionalProperties: false
      description: Market's country
    Nutrient:
      type: object
      properties:
        id:
          type: string
          description: Nutrient identifier
          format: uuid
        nutrientFamilyId:
          type: string
          description: Nutrient family identifier
          format: uuid
        parentId:
          type: string
          description: Nutrient parent identifier
          format: uuid
          nullable: true
        name:
          type: string
          description: Nutrient name
        state:
          type: string
          description: Nutrient state
        unitOfMeasureId:
          type: string
          description: Unit of measure identifier
          format: uuid
        hasChildren:
          type: boolean
          description: True, if nutrient has child nutrients
        children:
          type: array
          items:
            $ref: '#/components/schemas/Nutrient'
          description: Collection of nutrients children
        displayOrder:
          type: integer
          description: Display order
          format: int32
          nullable: true
        dailyIntake:
          type: number
          description: Daily intake
          format: decimal
          nullable: true
      additionalProperties: false
    NutrientFamily:
      type: object
      properties:
        id:
          type: string
          format: uuid
        name:
          type: string
        displayOrder:
          type: integer
          format: int32
          nullable: true
      additionalProperties: false
    RawMaterialClassificationItem:
      type: object
      properties:
        id:
          type: string
          description: Raw material classification item identifier
          format: uuid
        name:
          type: string
          description: Raw material classification item name
        parentId:
          type: string
          description: Raw material classification item parent identifier
          format: uuid
          nullable: true
        scientificName:
          type: string
          description: Raw material scientific name (always null for raw material families)
          nullable: true
        isRawMaterial:
          type: boolean
          description: >-
            True - if raw material classification item is a raw material, false
            - if it is a raw material family
        hasChildren:
          type: boolean
          description: True, if raw material classification item has child items
        rankClassification:
          type: string
          description: >-
            Raw material rank classification (always null for raw material
            families)
          nullable: true
        children:
          type: array
          items:
            $ref: '#/components/schemas/RawMaterialClassificationItem'
          description: Collection of raw material classification item children
      additionalProperties: false
      description: Raw material classification item
    RawMaterialPart:
      type: object
      properties:
        id:
          type: string
          description: Raw material part identifier
          format: uuid
        name:
          type: string
          description: Raw material part name
        parentId:
          type: string
          description: Raw material part parent identifier
          format: uuid
          nullable: true
        hasChildren:
          type: boolean
          description: True, if raw material part has child items
        children:
          type: array
          items:
            $ref: '#/components/schemas/RawMaterialPart'
          description: Raw material part children
      additionalProperties: false
      description: Raw material part
    Substance:
      type: object
      properties:
        id:
          type: string
          description: Substance identifier
          format: uuid
        name:
          type: string
          description: Substance name
        eNumber:
          type: string
          description: E number
          nullable: true
        description:
          type: string
          description: Substance description
          nullable: true
        iupacName:
          type: string
          description: IUPAC name
          nullable: true
        inciName:
          type: string
          description: INCI name
          nullable: true
        molecularFormula:
          type: string
          description: Molecular formula
          nullable: true
        casNumbers:
          type: array
          items:
            type: string
          description: Substance CAS numbers
          nullable: true
        ceNumbers:
          type: array
          items:
            type: string
          description: Substance CE numbers
          nullable: true
        colorIndexes:
          type: array
          items:
            type: string
          description: Substance Color indexes
          nullable: true
        synonyms:
          type: array
          items:
            type: string
          description: Substance synonyms
          nullable: true
        usages:
          type: array
          items:
            $ref: '#/components/schemas/SubstanceUsage'
          description: Substance usages
          nullable: true
      additionalProperties: false
      description: Substance
    SubstanceFunction:
      type: object
      properties:
        id:
          type: string
          description: Substance function identifier
          format: uuid
        name:
          type: string
          description: Substance function name
      additionalProperties: false
      description: Substance function
    SubstanceUsage:
      type: object
      properties:
        areaId:
          type: string
          description: Area identifier
          format: uuid
        areaCategories:
          uniqueItems: true
          type: array
          items:
            type: string
          description: Collection of area categories
      additionalProperties: false
      description: Substance usage
    T1ProblemDetails:
      type: object
      properties:
        type:
          type: string
          nullable: true
        title:
          type: string
          nullable: true
        status:
          type: integer
          format: int32
          nullable: true
        detail:
          type: string
          nullable: true
        instance:
          type: string
          nullable: true
        errors:
          type: array
          items:
            $ref: '#/components/schemas/Error'
          nullable: true
          readOnly: true
      additionalProperties: {}
  securitySchemes:
    Bearer:
      type: oauth2
      flows:
        clientCredentials:
          tokenUrl: https://ws-user.traceone.com/default/connect/token
          scopes:
            t1_api: t1_api
servers:
  - url: https://apis.traceone.com/reference-data
    description: Production
  - url: https://apis-ppd.traceone.com/reference-data
    description: Sandbox
